Communications network

ABSTRACT

A communications network may be used to convey Short Message Service (SMS) messages using the Internet Protocol (IP). User equipment may transmit an SMS-over-IP Session Initiation Protocol (SIP) message to wireless equipment over a high-bandwidth communications link. The wireless equipment may route the SMS-over-IP SIP message to the ePDG. When the high-bandwidth link is unavailable, the user equipment may transmit a compressed message to the proxy server over a low-bandwidth communications link. The proxy server may convert the compressed message into an SMS-over-IP SIP message that is transmitted to the ePDG. The proxy server may serve as a proxy for the first user equipment from the perspective of the ePDG. This may allow SMS message data to continue to be conveyed through the communications network even when the high-bandwidth communications link becomes unavailable.

This application claims the benefit of provisional patent applicationNo. 62/871,585, filed Jul. 8, 2019, which is hereby incorporated byreference herein in its entirety.

FIELD

This relates generally to communications networks, and, moreparticularly, to communications networks for conveying Short MessageService (SMS) messages.

BACKGROUND

Communications networks are used to convey data messages between firstuser equipment and second user equipment. The data messages ofteninclude text-based messages such as Short Message Service (SMS)messages. SMS messages are conveyed between the first user equipment anda carrier core network by a cellular base station (i.e., usingradio-frequency signals in a cellular telephone frequency band).

Many communications networks have SMS-over-IP capabilities in which anSMS message to or from carrier-authorized first user equipment isincluded in an SMS-over-IP message conveyed over the internet or othernetworks that operate using the Internet Protocol (IP). A networkcarrier that manages the carrier core network also operates a carrierEvolved Packet Data Gateway (ePDG) that is communicatively coupled tothe carrier core network. The SMS-over-IP messages are conveyed betweenthe first user equipment and the carrier ePDG through the Internet aswell as additional networks not operated by the carrier such as a localwireless access point (i.e., using radio-frequency signals in a wirelesslocal area network frequency band).

The ability to convey SMS message data between the first user equipmentand the second user equipment typically depends upon the availability ofa first wireless communications link between the first user equipmentand the cellular base station or a second communications link betweenthe first user equipment and the Internet. If care is not taken, thefirst user equipment and the second user equipment may be unable toconvey SMS message data through the communications network when thefirst and second communications links are unavailable.

SUMMARY

A communications network may be used to convey Short Message Service(SMS) message data between first and second user equipment using theInternet Protocol (IP). The communications network may includeInternet-supplying networking equipment such as a router or a wirelessaccess point, a proxy server, and an Evolved Packet Data Gateway (ePDG).The first user equipment may wirelessly transmit an SMS-over-IP SessionInitiation Protocol (SIP) message that includes SMS message data over afirst communications link between the first user equipment and theInternet-supplying networking equipment. The internet-supplyingnetworking equipment may route the SMS-over-IP SIP message to the ePDGthrough the Internet. The SMS-over-IP SIP message may, for example, betransmitted over a network tunnel that overlies the wireless equipment,the Internet, and the first communications link and that terminates atthe ePDG and the first user equipment.

The first user equipment may determine when the first communicationslink is unavailable (e.g., when the first user equipment is out of rangeof the wireless equipment or when the Internet is unavailable). When thefirst communications link is unavailable, the first user equipment mayencapsulate the SMS message data to form a compressed message. The firstuser equipment may wirelessly transmit the compressed message to theproxy server over a second communications link having a bandwidth thatis less than that of the first communications link. The proxy server mayconvert the compressed message into an SMS-over-IP SIP message. Forexample, the proxy server may de-encapsulate and decompress thecompressed message to recover the SMS message data. The proxy server maythen re-encapsulate the SMS message data to generate the SMS-over-IP SIPmessage. The proxy server may transmit the SMS-over-IP SIP message tothe ePDG (e.g., over a network tunnel that terminates at the proxyserver and the ePDG).

This process may be reversed to receive SMS message data transmitted bythe second user equipment at the first user equipment. The carrier ePDGmay transmit the SMS message from the second user equipment to the proxyserver in an SMS-over-IP SIP message. The proxy server may convert theSMS-over-IP SIP message received from the ePDG into a compressed messagethat is provided to the first user equipment over the secondcommunications link. The SMS-over-IP SIP messages conveyed by the proxyserver may be indistinguishable to the carrier ePDG from the SMS-over-IPmessages conveyed through the wireless equipment. In this way, the proxyserver may serve as a proxy for the first user equipment from theperspective of the ePDG when the first communications link isunavailable. This may allow SMS message data to continue to be conveyedbetween the first and second user equipment even when the firstcommunications link is unavailable.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of an illustrative communications networkthat conveys Short Message Service (SMS) message data in accordance withsome embodiments.

FIG. 2 is a schematic diagram of illustrative user equipment forconveying SMS message data over a communications network in accordancewith some embodiments.

FIG. 3 is a flow chart of illustrative steps involved in using acommunications network to convey SMS message data via a low-bandwidthcommunications link and a proxy server when high-bandwidthcommunications links are unavailable in accordance with someembodiments.

FIG. 4 is a flow chart of illustrative steps involved in establishingand authenticating a logical network path between user equipment and acarrier Evolved Packet Data Gateway (ePDG) via a low-bandwidthcommunications link and a proxy server in accordance with someembodiments.

FIG. 5 is a flow chart of illustrative steps involved in transmittingSMS message data from user equipment to a carrier ePDG via alow-bandwidth communications link and a proxy server in accordance withsome embodiments.

FIG. 6 is a flow chart of illustrative steps involved in receiving SMSmessage data at user equipment via a proxy server and a low-bandwidthcommunications link in accordance with some embodiments.

FIG. 7 is flow diagram showing how illustrative user equipment maytransmit SMS message data over a high-bandwidth communications link andthen over a low-bandwidth communications when the high-bandwidthcommunications link is unavailable in accordance with some embodiments.

FIG. 8 is flow diagram showing how illustrative user equipment mayreceive SMS message data over a high-bandwidth communications link andthen over a low-bandwidth communications link when the high-bandwidthcommunications link is unavailable in accordance with some embodiments.

DETAILED DESCRIPTION

A communications network may include first user equipment and seconduser equipment. The first user equipment may transmit messages to thesecond user equipment and may receive messages from the second userequipment. The communications network may include a carrier core networkthat is operated by a network carrier or service provider. Thecommunications network may also include a carrier Evolved Packet DataGateway (ePDG) that is operated by the network carrier.

The communications network may convey message data such as Short MessageService (SMS) message data between the first and second user equipment.The SMS message data may be included in SMS messages that are conveyedbetween the carrier core network and the first user equipment via acellular base station (e.g., over a cellular telephone communicationslink). The SMS message data may also be included in SMS-over-IP messagesthat are conveyed by the communications network using the InternetProtocol (IP). SMS-over-IP messages may be conveyed between the carriercore network and the first user equipment via the carrier ePDG and awireless access point (e.g., the SMS-over-IP messages may be conveyedbetween the wireless access point and the first user equipment over awireless local area network communications link). If desired, theSMS-over-IP messages may also be conveyed between the carrier corenetwork and the first user equipment via the carrier ePDG and thecellular base station (e.g., in scenarios where the cellular telephonecommunications link is capable of conveying SMS-over-IP messages). TheSMS-over-IP messages are Session Initiation Protocol (SIP) messages andmay therefore sometimes be referred to herein as SMS-over-IP SIPmessages or simply as SIP messages.

The cellular telephone communications link and the wireless local areanetwork communications link are high-bandwidth communications links thatsupport relatively high data rates (e.g., 100 kB/s or more, 1 MB/s ormore, 10 MB/s or more, 1 GB/s or more, etc.). The communications networkmay also include a proxy server that communicates with the first userequipment over a low-bandwidth communications link. The low-bandwidthcommunications link may operate using relatively low data rates (e.g.,100 kB/s or less, 10 kB/s or less, 1 kB/s or less, or other data ratesthat are lower than the data rates of the high-bandwidth communicationslinks). The first user equipment may still be able to communicate withthe proxy server over the low-bandwidth communications link when thefirst user equipment is unable to communicate over the high-bandwidthcommunications links (e.g., when the first user equipment has moved outof range of the cellular base station and wireless access point or whenthe Internet is unavailable).

When the high-bandwidth communications links are unavailable to thefirst user equipment, the communications network may establish andauthenticate a logical network path between the first user equipment andthe carrier ePDG via the proxy server and the low-bandwidthcommunications link. The logical network path may include a first pathbetween the first user equipment and the proxy server and a second paththat includes a secure network tunnel between the proxy server and thecarrier ePDG. Once the logical network path has been established, thefirst user equipment may generate a compressed message that includes SMSmessage data to convey to the second user equipment. The first userequipment may generate the compressed message by encapsulating the SMSmessage data using a compression algorithm associated with thelow-bandwidth communications link. The first user equipment may transmitthe compressed message to the proxy server over the low-bandwidthcommunications link.

The proxy server may unpack (de-encapsulate) the SMS message data fromthe compressed message using a decompression algorithm associated withthe low-bandwidth communications link. The proxy server may re-pack(re-encapsulate) the unpacked SMS message data to produce an SMS-over-IPSIP message. The proxy server may transmit the SMS-over-IP SIP messageto the carrier ePDG (e.g., over the secure network tunnel), whichconveys the SMS-over-IP SIP message or the SMS message data from theSMS-over-IP message to the carrier core network. The carrier corenetwork may provide the SMS-over-IP SIP message or the SMS message datafrom the SMS-over-IP SIP message to an SMS controller. The SMScontroller may forward the SMS message data to the second user equipment(e.g., as an SMS message or SMS-over-IP message conveyed to the seconduser equipment over a different carrier core network or the same carriercore network). To the carrier ePDG, the SMS-over-IP SIP message receivedfrom the proxy server may appear indistinguishable from SMS-over-IP SIPmessages conveyed to the carrier ePDG via the cellular base station andthe wireless access point. This process may be reversed to convey SMSmessage data from the second user equipment to the first user equipmentvia the proxy server and the low-bandwidth communications link when thehigh-bandwidth communications links are unavailable.

FIG. 1 is a schematic diagram of an illustrative communications network(system) 10 for conveying SMS message data or other message data betweenfirst user equipment (UE) 12 and second user equipment 14. As shown inFIG. 1, communications network 10 may include carrier core network 16,carrier ePDG 24, authentication server 26, SMS controller 18, networkportion 32, carrier configuration file server 28, proxy server 30, oneor more cellular base stations 22, and one or more wireless accesspoints 20. Cellular base station 22 and/or wireless access point 20 maybe omitted if desired. Cellular base station 22 and wireless accesspoint 20 may sometimes be referred to collectively herein ashigh-bandwidth wireless equipment or simply as wireless equipment.

First user equipment 12 may communicate with cellular base station 22over a high-bandwidth communications link such as high-bandwidthcommunications link 36. Cellular base station 22 may communicate withcarrier core network 16 over data path 38. If desired, cellular basestation 22 may communicate with carrier ePDG 24 over a correspondingdata path (not shown in FIG. 1 for the sake of clarity). First userequipment 12 may communicate with wireless access point 20 over ahigh-bandwidth communications link such as high-bandwidth communicationslink 34. Wireless access point 20 may communicate with carrier ePDG 24over data path 40. Carrier ePDG 24 may communicate with carrier corenetwork 16 over data path 42. Proxy server 30 may communicate withcarrier ePDG 24 over data path 52 and may communicate with carrierconfiguration file server 28 over data path 48. Carrier core network 16may communicate with authentication server 26 over data path 46 and maycommunicate with SMS controller 18 over data path 44.

Data paths 38, 40, 42, 44, 46, 48, and 52 may sometimes be referred toherein as communications paths or communications data paths. Data paths38, 40, 42, 44, 46, 48, and 52 may each include one or more wiredcommunications links (e.g., communications links formed using cablingsuch as ethernet cables, radio-frequency cables such as coaxial cablesor other transmission lines, optical fibers or other optical cables,etc.), one or more wireless communications links (e.g., short rangewireless communications links that operate over a range of inches, feet,or tens of feet, medium range wireless communications links that operateover a range of hundreds of feet, thousands of feet, miles, or tens ofmiles, and/or long range wireless communications links that operate overa range of hundreds or thousands of miles, etc.), switches, routers,servers, modems, repeaters, telephone lines, network cards, line cards,communications gateways, portals, user equipment (e.g., computingdevices, mobile devices, etc.), wireless access points, base stations,some or all of a network of communications (network) nodes or terminalscoupled together using these components or other components (e.g., someor all of a mesh network, relay network, ring network, local areanetwork, wireless local area network, personal area network, cloudnetwork, star network, tree network, or networks of communications nodeshaving other network topologies), the Internet, combinations of these,etc.

SMS controller 18 may communicate with second user equipment 14 overnetwork portion 32. Network portion 32 may include one or morecommunications links, data paths, wireless access points, cellular basestations, proxy servers, carrier ePDGs, carrier core networks, and/orcarrier configuration file servers. Carrier network 16 and carrier ePDG24 of FIG. 1 may be operated by a corresponding network carrier orservice provider. In one suitable arrangement, network portion 32 mayinclude a carrier core network, carrier ePDGs, and other components thatare operated by a different network carrier than the network carrierassociated with carrier core network 16 and carrier ePDG 24. In anothersuitable arrangement, network portion 32 may be operated by the samenetwork carrier or service provider as carrier core network 16 andcarrier ePDG 24 (e.g., network portion 32 may include one or more ofcarrier core network 16, carrier ePDG 24, cellular base station 22,wireless access point 20, carrier configuration file server 28, and datapaths 38, 40, 42, 44, and 46 in a scenario where second user equipment14 and first user equipment 12 both subscribe to the same networkcarrier).

High-bandwidth communications links 36 and 34 may support data transferusing relatively high data rates (e.g., 100 kB/s or more, 1 MB/s ormore, 10 MB/s or more, 1 GB/s or more, etc.). High-bandwidthcommunications links 36 and 34 may each include respectivehigh-bandwidth wireless communications links. For example,high-bandwidth communications link 36 may include a cellular telephonecommunications link that wirelessly conveys data using a cellulartelephone frequency band (e.g., a wireless communications linkmaintained using a cellular telephone radio access technology such as 4GLTE, GSM, UMTS, etc.). High-bandwidth communications link 34 may includea wireless local area communications link that wirelessly conveys datausing a wireless local area network frequency band (e.g., a wirelesscommunications link maintained using a wireless local area network radioaccess technology such as Wi-Fi®). In this example, the high-bandwidthwireless communications links in high-bandwidth communications links 36and 34 are short range wireless communications links that operate over arange of inches, feet, or tens of feet, or medium range wirelesscommunications links that operate over a range of hundreds of feet,thousands of feet, miles, or tens of miles. This is merely illustrativeand, if desired, high-bandwidth communications links 34 and/or 36 mayinclude long range wireless communications links that operate over arange of hundreds or thousands of miles, etc.

In practice, first user equipment 12 may only communicate usinghigh-bandwidth communications links 36 and 34 when user equipment 12 islocated within range of cellular base station 22 or wireless accesspoint 20. When user equipment 12 is located outside the range ofcellular base station 22 and wireless access point 20 (or wheneverhigh-bandwidth communications links 36 and 34 are otherwiseunavailable), first user equipment 12 may communicate with carrier ePDG24 via proxy server 30 and low-bandwidth communications link 50. Firstuser equipment 12 and proxy server 30 may be able to convey data overlow-bandwidth communications link 50 even when high-bandwidthcommunications links 34 and 36 are unavailable. Proxy server 30 may beimplemented on a computer, server, or any other computing equipment. Ifdesired, proxy server 30 may be implemented on a distributed computersystem such as a cloud-based computer network. For example, proxy server30 may be logically defined as a virtual machine or server that isimplemented (distributed) across two or more underlying physicalcomputers, servers, network terminals, network nodes, or other computingequipment at one or more geographic locations.

Low-bandwidth communications link 50 may support data transfer using arelatively low data rate (e.g., 100 kB/s or less, 10 kB/s or less, 1kB/s or less, or other data rates that are less than the data ratessupported by high-bandwidth communications links 34 and 36). In otherwords, low-bandwidth communications link 50 may support data transferusing relatively low bandwidths (and/or data rates) that are lower thanthe relatively high bandwidths (and/or data rates) supported byhigh-bandwidth communications links 34 and 36. Low-bandwidthcommunications link 50 may include one or more low-bandwidth wirelesscommunications links (e.g., wireless communications links that conveydata using the relatively low bandwidth and data rate). Thelow-bandwidth wireless communications links in low-bandwidthcommunications link 50 may be short range wireless communications linksthat operate over a range of inches, feet, or tens of feet, medium rangewireless communications links that operate over a range of hundreds offeet, thousands of feet, miles, or tens of miles, and/or long rangewireless communications links that operate over a range of hundreds orthousands of miles, etc. The low-bandwidth wireless communications linksmay wirelessly convey data over any desired frequency bands (e.g.,frequency bands that are different from the frequency bands handled byhigh-bandwidth communications links 34 and 36 or one or more of the samefrequency bands as those handled by high-bandwidth communications links34 and 36). Low-bandwidth communications link 50 may be a directconnection between first user equipment 12 and proxy server 30 or mayinclude multiple network nodes that convey data using at least onelow-bandwidth wireless communications link and one or more otherwireless or wired communications links. For example, low-bandwidthcommunications link 50 may include a relay network, a mesh network, astar network, a tree network, a ring network, a local area network, awireless local area network, combinations of these, and/or a network ofnetwork nodes having other network topologies.

First user equipment 12 and second user equipment 14 may conveytext-based message data such as SMS message data over communicationsnetwork 10. The SMS message data may be included in SMS messages and/orSMS-over-IP SIP messages (e.g., the SMS message data may form a datapayload for the SMS messages or SMS-over-IP SIP messages and may includetext or other input generated by software applications running on theuser equipment or provided by a user via input/output devices on orcoupled to the user equipment). The SMS messages may include an SMSheader in addition to the SMS message data. The SMS-over-IP SIP messagesmay include an SMS header and other headers such as an IP MultimediaSubsystem (IMS) header in addition to the SMS message data.Communications network 10 may use the SMS header in the SMS messages andthe SMS and IMS headers in the SMS-over-IP SIP messages to helpdetermine where to route the SMS message data to reach a desired messagedestination.

When first user equipment 12 is in range of cellular base station 22,first user equipment 12 may transmit an SMS message to cellular basestation 22 over high-bandwidth communications link 36. Cellular basestation 22 may relay the SMS message to carrier core network 16 overdata path 38. Carrier core network 16 may transmit the SMS message datafrom the SMS message to SMS controller 18 over data path 44. SMScontroller 18 may convey the SMS message data to second user equipment14 via network portion 32.

When first user equipment 12 is in range of wireless access point 20,first user equipment 12 may transmit an SMS-over-IP SIP message towireless access point 20 over high-bandwidth communications link 34.Wireless access point 20 may route the SMS-over-IP SIP message tocarrier ePDG 24 over data path 40. Carrier ePDG 24 is a node or gatewaythat is communicatively coupled to carrier core network 16 via data path42. Carrier ePDG may transmit the SMS-over-IP SIP message to carriercore network 16 over data path 42. Carrier core network 16 may parse andprocess the SMS-over-IP SIP message and may convey the SMS-over-IP SIPmessage or the corresponding SMS message data from the SMS-over-IP SIPmessage to SMS controller 18. SMS controller 18 may convey the SMSmessage data to second user equipment 14 via network portion 32.

A secure network tunnel such as an Internet Protocol Security (IPSec)tunnel may be established between carrier ePDG 24 and first userequipment 12 (through wireless access point 20) using authenticationinformation (e.g., security keys or other information) stored atauthentication server 26. The SMS-over-IP SIP message may be conveyedbetween first user equipment 12 and carrier ePDG 24 over the IPSectunnel (e.g., via the underlying high-bandwidth communications link 34,wireless access point 20, and data path 40). If desired, the SMS-over-IPSIP message may additionally or alternatively be conveyed between firstuser equipment 12 and carrier ePDG 24 via cellular base station 22 andhigh-bandwidth communications link 36 (e.g., in scenarios wherehigh-bandwidth communications link 36 is a cellular telephonecommunications link capable of conveying SMS-over-IP messages such as a4G LTE link). These processes may be reversed to receive SMS messagedata at first user equipment 12 (e.g., SMS message data transmitted bysecond user equipment 14).

When high-bandwidth communications links 36 and 34 are unavailable tofirst user equipment 12, first user equipment 12 may convey SMS messagedata using low-bandwidth communications link 50 and proxy server 30instead of using high-bandwidth communications links 36 and 34, cellularbase station 22, and wireless access point 20. Information stored atauthentication server 26 and carrier configuration file server 28 may beused in establishing and securing a logical network path between firstuser equipment 12 and carrier ePDG 24. The logical network path mayinclude one or more secure network tunnels such as a first networktunnel between first user equipment 12 and proxy server 30 (e.g., SMSmessage data conveyed over low-bandwidth communications link 50 may beencapsulated using a protocol associated with low-bandwidthcommunications link 50) and a second network tunnel between proxy server30 and carrier ePDG 24 (e.g., an IPSec tunnel). Proxy server 30 mayconvert the SMS message data between a low-bandwidth format associatedwith low-bandwidth communications link 50 and a high-bandwidth formatassociated with data path 52 (e.g., an SMS-over-IP SIP message). Proxyserver 30 and low-bandwidth communications link 50 may allow forseamless or near-seamless communications between second user equipment14 and first user equipment 12 using SMS-over-IP messages even whenhigh-bandwidth communications links 36 and 34 become unavailable tofirst user equipment 12.

The example of FIG. 1 is merely illustrative. First user equipment 12and second user equipment 14 may convey SMS-over-IP information wheneverfirst user equipment 12 is connected to a network that can communicatevia the Internet Protocol with carrier ePDG 24. For example, first userequipment 12 may be communicatively coupled to a network that has highspeed IP connectivity to carrier ePDG 24 such as an access pointconnected to the public Internet. However, first user equipment 12 neednot communicate with carrier ePDG via the public Internet. In otherwords, access point 20 may be an access point with Internet access ormay be hardwired to a private IP network that is directly connected tothe carrier (e.g., data path 40 may include the public Internet or aprivate IP network). For example, access point 20 may be a subscriberidentity module (SIM)-based Internet of Things (IoT) device hard-wiredto a corporate network that peers with the carrier. In this example,access point 20 may be a device with no Internet or wireless capabilitybut that still conveys SMS-over-IP information between first userequipment 12 and carrier ePDG 24. High-bandwidth communications link 34may be replaced by a wired link and need not be wireless in this or inother examples.

While low-bandwidth communications link 50 is described herein as beinga low-bandwidth link, the methods described herein may be used for anysecond communications link (e.g., in place of low-bandwidthcommunications link 50 of FIG. 1) that does not fit the criteria ofbeing able to connect to a network that has high speed IP connectivityto carrier ePDG 24 (e.g., via access point 20) and that is not connectedto the carrier over a cellular telephone communications link. Thiscommunication may be low-bandwidth, may occur when first user equipment12 is connected to a network that does not have IP connectivity tocarrier ePDG 24 such as a corporate network that does not have Internet,or may be high speed without communicating using IP (e.g., a high speednetwork that does not have SIM-based devices that need to send SMSmessages, a private IP corporate network without Internet connectivity,etc.). In other words, low-bandwidth communications link 50 need not below-bandwidth and may, in general, be any communications link that doesnot fit the criteria of being able to connect to a network that has highspeed IP connectivity to carrier ePDG 24.

FIG. 2 is a schematic diagram of first user equipment 12. First userequipment 12 may be a portable electronic device such as a cellulartelephone, portable media player, wearable electronic device (e.g.,wristwatch), laptop computer, tablet computer, gaming controller, remotecontrol, or electronic navigation device, other larger electronicdevices such as a desktop computer, television, set-top box, homeentertainment system, server, or computer monitor, or may includeelectronic equipment integrated into a larger system such as a kiosk,building, or vehicle. First user equipment 12 may include a housinghaving housing walls formed from dielectric and/or conductive materials.Second user equipment 14 of FIG. 1 may include any of these types ofequipment. In another suitable arrangement, second user equipment 14 mayinclude Internet service equipment. Information conveyed between firstuser equipment 12 and second user equipment 14 may include any desiredinformation (e.g., message data, application data, image data, videodata, email data, webpage data, authentication data such as two-factorauthentication codes, real-time chat data, etc.).

As shown in FIG. 2, first user equipment 12 may include controlcircuitry 54, input/output devices 60, and wireless circuitry 62.Control circuitry 54 may include storage such as storage 58. Storage 58may include volatile memory (e.g., static or dynamicrandom-access-memory), nonvolatile memory (e.g., flash memory or otherelectrically-programmable-read-only memory), hard drive storage, etc.Control circuitry 54 may also include processing circuitry 56.Processing circuitry 56 may control the operation of first userequipment 12. Processing circuitry 56 may include one or moreapplication specific integrated circuits, microprocessors,microcontrollers, baseband processor integrated circuits, centralprocessing units, digital signal processors, etc.

Control circuitry 54 may be used to run software on first user equipment12 such as operating system functions, software applications, etc. Forexample, storage 58 may store computer code or other softwareinstructions that are executed by processing circuitry 56. The computercode may be stored on a non-transitory computer readable storage medium(e.g., storage 58 or a removable storage medium). Control circuitry 54may also be used in implementing wireless communications protocols(e.g., wireless communications protocols associated with differentradio-access technologies that are used to wirelessly convey data overwireless communications links in high-bandwidth communications links 34and 36 and low-bandwidth communications link 50 of FIG. 1).

Input/output devices 60 are used in providing input to and output fromfirst user equipment 12. For example, input/output devices 60 mayinclude one or more displays (e.g., touch sensitive displays, liquidcrystal displays, light emitting diode displays, etc.), sensors (e.g.,light sensors, proximity sensors, range sensors, image sensors, audiosensors such as microphones, force sensors, moisture sensors, humiditysensors, fingerprint sensors, pressure sensors, touch sensors,ultrasonic sensors, accelerometers, gyroscopes, compasses, etc.), statusindicator lights, speakers, vibrators, keyboards, touch pads, buttons,joysticks, etc.

Wireless circuitry 62 may include radio-frequency transceivers 64 andone or more antennas 66 for wirelessly communicating with externalequipment (e.g., cellular base station 22, wireless access point 20, andproxy server 30 of FIG. 1). Antennas 66 may include any desired types ofantennas such as patch antennas, dipole antennas, monopole antennas,inverted-F antennas, planar inverted-F antennas, slot antennas, helicalantennas, combinations of these and/or other types of antennas, etc.Transceivers 64 may be used to transmit and receive radio-frequencysignals using antennas 66. Transceivers 64 may each be formed fromrespective integrated circuits or may share one or more integratedcircuits. Transceivers 64 may include mixer circuitry, analog-to-digitalconverter circuitry, digital-to-analog transceiver circuitry, amplifiercircuitry, and/or any other desired components for transmitting andreceiving radio-frequency signals. Wireless circuitry 62 may alsoinclude baseband processor circuitry, transmission line structures,filter circuitry, switching circuitry, and/or any other desiredcircuitry for transmitting and receiving wireless radio-frequencysignals using antennas 66.

If desired, each transceiver 64 may handle radio-frequency signals usinga different respective radio access technology and/or frequency band.For example, a first transceiver 64 may handle communications overhigh-bandwidth communications link 36 of FIG. 1 using a first radioaccess technology and/or a first frequency band, a second transceiver 64may handle communications over high-bandwidth communications link 34using a second radio access technology and/or a second frequency band,and a third transceiver 64 may handle communications over low-bandwidthcommunications link 50 using a third radio access technology and/or athird frequency band. This is merely illustrative and, if desired, thesame radio access technology and/or frequency band may be used to handleone, two, or each of low-bandwidth communications link 50,high-bandwidth communications link 34, and high-bandwidth communicationslink 36. Similar components may be used to form second user equipment 14of FIG. 1 if desired.

FIG. 3 is a flow chart of illustrative steps that may be performed bycommunications network 10 of FIG. 1 to convey SMS message data betweenfirst user equipment 12 and second user equipment 14. The steps of FIG.3 may, for example, allow for seamless or near-seamless communicationsbetween second user equipment 14 and first user equipment 12 using SMSmessage data even after high-bandwidth communications links 36 and 34have become unavailable to first user equipment 12.

At step 70 of FIG. 3, communications network 10 may convey SMS messagedata between first user equipment 12 and second user equipment 14 usinghigh-bandwidth communications links 36 and/or 34. For example, SMSmessages may be conveyed between carrier core network 16 and first userequipment 12 via data path 38 and high-bandwidth communications link 36.As another example, SMS-over-IP SIP messages may be conveyed betweenfirst user equipment 12 and carrier ePDG 24 via data path 40, wirelessaccess point 20, and high-bandwidth communications link 34 (e.g., overan IPSec tunnel from carrier ePDG 24 to first user equipment 12 throughwireless access point 20). SMS message data received at first userequipment 12 may be provided to software applications running on firstuser equipment 12 (e.g., for displaying to a user using a display on thefirst user equipment). SMS message data transmitted by first userequipment 12 may be provided by software applications running on userequipment 12 and/or one or more user input devices on the first userequipment.

When high-bandwidth communications links 36 and 34 are no longeravailable to first user equipment 12, processing may proceed to step 74as shown by arrow 72. High-bandwidth communications links 36 and 34 maybecome unavailable when first user equipment 12 has moved out of rangeof wireless access point 20 and cellular base station 22 (e.g., whenfirst user equipment 12 has moved out of range of any wireless accesspoints or cellular base stations), when first user equipment 12 nolonger has access to cellular base station 22 and wireless access point20 (e.g., because cellular base station 22 and wireless access point 20are operated by a network carrier that does not provide first userequipment 12 with access to cellular base station 22 and wireless accesspoint 20), when cellular base station 22 and wireless access point 20are disabled, inoperable, or powered down, etc.

If desired, first user equipment 12 may monitor the status ofhigh-bandwidth communications links 34 and 36 and may identify whenhigh-bandwidth communications links 34 and 36 have become unavailable.For example, first user equipment 12 may monitor the link quality ofhigh-bandwidth communications links 34 and 36 (e.g., using receivedsignal strength measurements, received signal strength indicatormeasurements, error rate measurements, signal-to-noise ratiomeasurements, etc.), may determine when data is no longer being receivedover high-bandwidth communications links 36 and 34, may processsatellite navigation data or other sensor data to identify when firstuser equipment 12 is no longer in range of cellular base station 22 andwireless access point 20, may identify messages received from cellularbase station 22, wireless access point 20, or elsewhere indicating thathigh-bandwidth communications links 34 and 36 are no longer available,and/or may perform any other desired operations to determine whenhigh-bandwidth communications links 34 and 36 have become unavailable.Cellular base station 22, wireless access point 20, and/or any otherdesired components in communications network 10 may perform one or moreof these operations to determine when high-bandwidth links 34 and 36have become unavailable if desired.

At step 74 (e.g., in response to identifying, at first user equipment12, that high-bandwidth communications links 36 and 34 are unavailable),communications network 10 may establish and authenticate a logicalnetwork path between first user equipment 12 and carrier ePDG 24 throughlow-bandwidth communications link 50, proxy server 30, and data path 52.The example of FIG. 3 is merely illustrative and, in another suitablearrangement, step 74 may be performed while one or more of thehigh-bandwidth communications links are still being used to convey SMSmessage data (e.g., step 74 may be performed concurrently with step 70).

In establishing and authenticating the logical network path,communications network 10 may establish one or more secure networktunnels between carrier ePDG 24 and first user equipment 12. Forexample, first user equipment 12 and proxy server 30 may establish afirst secure network tunnel such as an interworking wireless local areanetwork (iWLAN) tunnel between first user equipment 12 and proxy server30. SMS message data may be conveyed over the first network tunnel byencapsulating the SMS message data using a compression algorithm orenvelope associated with low-bandwidth communications link 50 prior toconveying the SMS message data over the low-bandwidth communicationslink. This encapsulation may be reversed using a decompression(de-encapsulation) algorithm after the SMS message data has beenconveyed over the low-bandwidth communications link and the first securenetwork tunnel (e.g., at proxy server 30 or first user equipment 12).First user equipment 12 and proxy server 30 may convey data overcommunications link 50 without using a network tunnel if desired.Communications network 10 may also establish a second secure networktunnel (e.g., an IPSec tunnel) between proxy server 30 and carrier ePDG24. The established and authenticated logical network path may includethe underlying low-bandwidth communications link 50, proxy server 30,and data path 52. However, proxy server 30 may appear indistinguishablefrom first user equipment 12 to carrier ePDG 24 (e.g., proxy server 30may serve as a proxy for first user equipment 12 from the perspective ofcarrier ePDG 24).

At step 76, communications network 10 may convey SMS message databetween first user equipment 12 and second user equipment 14 usinglow-bandwidth communications link 50, proxy server 30, data path 52, andcarrier ePDG 24. For example, first user equipment 12 may transmit SMSmessage data in a low-bandwidth format (e.g., as a compressed message)to proxy server 30 over low-bandwidth communications link 50. Proxyserver 30 may convert the SMS message data from the low-bandwidth formatinto a high-bandwidth format associated with carrier ePDG 24 (e.g.,proxy server 30 may convert the compressed message into an SMS-over-IPSIP message). Proxy server 30 may transmit the SMS message data in thehigh-bandwidth format (e.g., as an SMS-over-IP SIP message) to carrierePDG 24 over data path 52 (e.g., via the IPSec tunnel between proxyserver 30 and carrier ePDG 24). Carrier ePDG 24 may transmit the SMSmessage data to second user equipment 14 via carrier core network 16,SMS controller 18, and network portion 32. This process may be reversedto receive SMS message data from second user equipment 14 at first userequipment 12.

Carrier ePDG 24 may be unable to distinguish between the IPSec tunnelbetween carrier ePDG 24 and proxy server 30 and an IPSec tunnel betweencarrier ePDG 24 and first user equipment 12 through wireless accesspoint 20 (e.g., as used to convey SMS-over-IP SIP messages whileprocessing step 70). Similarly, carrier ePDG 24 may be unable todistinguish between the SMS-over-IP SIP messages received from wirelessaccess point 20 and the SMS-over-IP SIP messages received from proxyserver 30 (e.g., because the SMS-over-IP SIP messages received atcarrier ePDG 24 are the same regardless of whether the messages wereconveyed over data path 40 and high-bandwidth communications link 34 orwhether the messages were conveyed over data path 52 and low-bandwidthcommunications link 50 via proxy server 30). Proxy server 30 maytherefore appear to carrier ePDG 24 and the rest of communicationsnetwork 10 above dashed line 41 of FIG. 1 as indistinguishable fromfirst user equipment 12. SMS message data conveyed to first userequipment 12 from second user equipment 14 may terminate at proxy server30 (e.g., as if proxy server 30 were in fact the first user equipment12). Proxy server 30 may then forward the SMS message data to first userequipment 12 (e.g., as a compressed message) over low-bandwidthcommunications link 50.

In this way, first user equipment 12 and second user equipment 14 maycontinue to convey SMS message data even when high-bandwidthcommunications links 34 and 36 are unavailable. Once high-bandwidthcommunications link 34 and/or high-bandwidth communications link 36 havebecome available again, processing may loop back to step 70, as shown byarrow 78. Communications network 10 may then continue conveying SMSmessage data using high-bandwidth communications links 34 and 36 untilthe high-bandwidth communications links are no longer available.

FIG. 4 is a flow chart of illustrative steps that may be performed bycommunications network 10 in establishing and authenticating a logicalnetwork path between first user equipment 12 and carrier ePDG 24 throughan underlying low-bandwidth communications link 50, proxy server 30, anddata path 52 (FIG. 1). Some or all of the steps of FIG. 4 may, forexample, be performed while processing step 74 of FIG. 3.

At step 80 of FIG. 4, proxy server 30 may receive carrier configurationfile information (e.g., one or more carrier configuration files) fromcarrier configuration file server 28 over data path 48. Carrierconfiguration file server 28 may store the latest carrier configurationfile for each network carrier associated with communication network 10.The carrier configuration file information may identify the domain andnetwork address of one or more carrier ePDGs such as carrier ePDG 24.Carrier configuration file server 28 may periodically update the carrierconfiguration file information over time. Step 80 may be performedconcurrently with or prior to step 70 of FIG. 3, if desired.

At step 82 of FIG. 4, first user equipment 12 may transmit aconfiguration data message to proxy server 30 over low-bandwidthcommunications link 50. The configuration data message may include theinternational mobile subscriber identity (IMSI) of first user equipment12 or other network identity information that uniquely identifies firstuser equipment 12. The configuration data may also include the networkaccess identifier (NAI) of first user equipment 12, which identifies thenetwork carrier associated with first user equipment 12. As an example,the NAI may be of the form“x<IMSI>@nai.epc.mnc<MNC>.mcc<MCC>.3gppnetwork.org,”, “imsi@realm,” orother formats, where “x” represents a version of ExtensibleAuthentication Protocol Authentication and Key Agreement (EAP-AKA) thatis used (e.g., “0<IMSI>@nai.epc.mnc<MNC>.mcc<MCC>.3gppnetwork.org” tosignal regular EAP-AKA,“6<IMSI>@nai.epc.mnc<MNC>.mcc<MCC>.3gppnetwork.org” to signal EAP-AKA′,“0<IMSI>@nai.epc.mnc<MNC>.mcc<MCC>.3gppnetwork.org” to signal EAP-SIM,etc.). If desired, the configuration data message may include any otherdesired information (e.g., information identifying the configurationdata message as a configuration data message to use in establishing alogical path between first user equipment 12 and carrier ePDG 24, thedomain and network address of carrier ePDG 24, etc.).

Proxy server 30 may subsequently begin a network authenticationprocedure such as an Internet Key Exchange Version 2 (IKEv2) procedurebased on the configuration data message and the carrier configurationfile information. For example, at step 84, proxy server 30 may identifythe domain and network address of carrier ePDG 24 based on theconfiguration data received from first user equipment 12 and the carrierconfiguration file information received from carrier configuration fileserver 28. Proxy server 30 may, for example, identify the carrier ePDGdomain and network address in the carrier configuration file serverinformation corresponding to the NAI in the configuration data receivedfrom first user equipment 12.

As part of the network authentication procedure, proxy server 30 maybegin a key exchange procedure such as an Extensible AuthenticationProtocol Authentication and Key Agreement (EAP-AKA) key exchange withauthentication server 26. For example, at step 86, proxy server 30 maytransmit an authentication request to carrier ePDG 24 (e.g., using thedomain and network address identified while processing step 84). CarrierePDG 24 may pass the authentication request to authentication server 26via data path 42, carrier core network 16, and data path 46.Authentication server 26 may generate a response to the authenticationrequest and may transmit the response to proxy server 30.

At step 88, proxy server 30 may receive the response to theauthentication request from authentication server 26 via data path 46,carrier core network 16, data path 42, carrier ePDG 24, and data path52.

At step 90, proxy server 30 may transmit the response to theauthentication request to first user equipment 12 over low-bandwidthcommunications link 50.

At step 92, first user equipment 12 may challenge a subscriber identitymodule (SIM) at first user equipment 12 using the response to theauthentication request received over low-bandwidth communications link50. When challenged by the response to the authentication request, theSIM at first user equipment 12 may produce a challenge response.

At step 94, first user equipment 12 may transmit the challenge responseto proxy server 30 over low-bandwidth communications link 50.

At step 96, proxy server 30 may transmit the challenge response toauthentication server 26 via data path 52, carrier ePDG 24, data path42, carrier core network 16, and data path 46. The challenge responsemay appear to authentication server 26 and the rest of communicationsnetwork 10 above dashed line 41 of FIG. 1 as if it were generated by aSIM at proxy server 30 (e.g., because proxy server 30 serves as a proxyfor first user equipment 12). Authentication server 26 may verify thereceived challenge response and, once the challenge response has beenverified, may transmit an acknowledgement of the challenge response toproxy server 30.

At step 98, proxy server 30 may receive the acknowledgement of thechallenge response from authentication server 26 via data path 46,carrier core network 16, data path 42, carrier ePDG 24, and data path52. Once proxy server 30 has received the acknowledgment, a secure andauthentic network tunnel such as an IPSec tunnel is established betweenproxy server 30 and carrier ePDG 24.

At step 100, communications network 10 may perform IMS registrationoperations for proxy server 30. For example, proxy server 30 may providean IMS registration request to authentication server 26 (e.g., via theIPSec tunnel over data path 52, carrier ePDG 24, data path 42, carriercore network 16, and data path 46). Authentication server 26 may respondto the IMS registration request with unique response data transmitted toproxy server 30. Proxy server 30 may convey the unique response data tofirst user equipment 12 over low-bandwidth communications link 50. Firstuser equipment 12 may use the unique response data to challenge the SIMat first user equipment 12, which generates a challenge response. Firstuser equipment 12 may transmit the challenge response to proxy server 30over low-bandwidth communications link 50. Proxy server 30 may transmitthe challenge response to authentication server 26 (e.g., via the IPSectunnel over data path 52, carrier ePDG 24, data path 42, carrier corenetwork 16, and data path 46). Authentication server 26 may verify thechallenge response and, once the challenge response has been verified,may transmit a corresponding acknowledgement to proxy server 30. At thispoint, proxy server 30 and thus first user equipment 12 may beIMS-registered. Once IMS registration is complete, a secure andauthenticated logical network path is established between first userequipment 12 and carrier ePDG 24 through proxy server 30. SMS messagedata may subsequently be conveyed over low-bandwidth communications link50 and over data path 52 (e.g., via the IPSec tunnel). This example ismerely illustrative and, if desired, other authentication procedures maybe used to establish and authenticate the logical network path.

FIG. 5 is a flow chart of illustrative steps that may be performed bycommunications network 10 in transmitting SMS message data from firstuser equipment 12 to second user equipment 14. The steps of FIG. 5 may,for example, be performed while processing step 76 of FIG. 3.

At step 102 of FIG. 5, first user equipment 12 may identify SMS messagedata to transmit to second user equipment 14. The SMS message data maybe a data payload that includes text or other input generated bysoftware applications running on the user equipment or provided by auser via input/output devices on or coupled to the user equipment. Inscenarios where high-bandwidth communications link 36 is available, theSMS message data may be included in an SMS message or in an SMS-over-IPSIP message provided to cellular base station 22 over high-bandwidthcommunications link 36. Similarly, in scenarios where high-bandwidthcommunications link 34 is available, the SMS message data may beincluded in an SMS-over-IP SIP message provided to wireless access point20 over high-bandwidth communications link 34. When high-bandwidthcommunications links 34 and 36 are unavailable, only low-bandwidthcommunications link 50 is available for first user equipment 12 totransmit the SMS message data. However, low-bandwidth communicationslink 50 may be unable to support excessively large messages such asSMS-over-IP messages.

At step 104, first user equipment 12 may generate a compressed messagethat includes the identified SMS message data (e.g., a compressedmessage in the low-bandwidth format associated with low-bandwidthcommunications link 50). To generate the compressed message, first userequipment 12 (e.g., control circuitry 54 of FIG. 2) may encapsulate theSMS message data using a compression algorithm or envelope associatedwith low-bandwidth communications link 50. The compression algorithmmay, for example, remove any SMS or IMS headers from the SMS messagedata (e.g., headers that would otherwise be present when the SMS messagedata is sent as an SMS-over-IP SIP message via high-bandwidthcommunications links 34 or 36) and/or may perform any other desiredcompression operations on the SMS message data. Removing the SMS and IMSheaders from the SMS message data may significantly reduce the size ofthe compressed message relative to the size of an SMS-over-IP SIPmessage. The compressed message may, for example, be less than 5 kB,less than 1 kB, etc. This reduced size may allow the compressed messageto be conveyed over low-bandwidth communications link 50. The compressedmessage may include Link Layer headers or other relatively small headers(e.g., headers that are smaller in size than SMS or IMS headers),network identity information associated with first user equipment 12(e.g., the IMSI of first user equipment 12), and/or any other desiredinformation that helps to route the SMS message data in the compressedmessage to a desired destination (e.g., to second user equipment 14).

At step 106, first user equipment 106 may transmit the compressedmessage to proxy server 30 over low-bandwidth communications link 50.The encapsulation of the SMS message data to form the compressed messagemay, for example, configure the SMS message data to be conveyed over thefirst secure network tunnel between first user equipment 12 and proxyserver 30 (e.g., via the underlying low-bandwidth communications link50).

At step 108, proxy server 30 may unpack (extract) the SMS message datafrom the compressed message received over low-bandwidth communicationslink 50. For example, proxy server 30 may unpack the SMS message data byperforming a decompression algorithm (e.g., de-enveloping orde-encapsulating process) on the compressed message (e.g., thedecompression algorithm may reverse the compression algorithm performedby first user equipment 12 because the first secure network tunnelterminates at proxy server 30).

At step 110, proxy server 30 may re-pack the unpacked SMS message datainto a high-bandwidth format associated with data path 52. For example,proxy server 30 may re-pack (e.g., encapsulate) the SMS message data asan SMS-over-IP SIP message. The SMS-over-IP SIP message may include SMSand IMS headers (e.g., headers that were removed at first user equipment12 while processing step 104), where the SMS message data forms the datapayload for the SMS-over-IP SIP message.

At step 112, proxy server 30 may transmit the SMS-over-IP SIP message tocarrier ePDG 24 via data path 52 (e.g., over the IPSec tunnel betweenproxy server 30 and carrier ePDG 24). The SMS-over-IP SIP messagegenerated by proxy server 30 may be indistinguishable to carrier ePDG 24from an SMS-over-IP SIP message conveyed to carrier ePDG 24 via wirelessaccess point 20 and high-bandwidth communications link 34. While thesource address header fields of the SMS-over-IP SIP message may identifyproxy server 30 as the source of the SMS-over-IP SIP message rather thanfirst user equipment 12), carrier ePDG 24 may have no way of knowingthat proxy server 30 is a network entity that is different from firstuser equipment 12 (e.g., proxy server 30 serves as a proxy for firstuser equipment 12 and, from the perspective of carrier ePDG 24, isindistinguishable from first user equipment 12).

At step 114, carrier ePDG 24 may transmit the SMS message data (e.g.,the SMS-over-IP SIP message) received from proxy server 30 to carriercore network 16 over data path 42. Carrier core network 16 may transmitthe SMS message data to SMS controller 18 over data path 44. SMScontroller 18 may transmit the SMS message data to second user equipment14 via network portion 32.

FIG. 6 is a flow chart of illustrative steps that may be performed bycommunications network 10 in transmitting SMS message data from seconduser equipment 14 to first user equipment 12. The steps of FIG. 6 may,for example, be performed while processing step 76 of FIG. 3. Seconduser equipment 14 may transmit SMS message data (e.g., in an SMS messageor an SMS-over-IP SIP message) that is forwarded to carrier core network16 by SMS controller 18. Carrier core network 16 may pass the SMSmessage data to carrier ePDG 24 over data path 42. Carrier ePDG 24 maytransmit an SMS-over-IP SIP message that includes the SMS message datato proxy server 30 over data path 52 (e.g., over the IPSec tunnelassociated with data path 52).

At step 116 of FIG. 6, proxy server 30 may receive the SMS-over-IP SIPmessage from carrier ePDG 24. From the perspective of carrier ePDG 24,proxy server 30 is the destination for the SMS message data in theSMS-over-IP SIP message. However, proxy server 30 is aware oflow-bandwidth communications link 50 and that first user equipment 12 isthe final destination for the SMS message data in the SMS-over-IP SIPmessage.

At step 118, proxy server 30 may unpack the SMS message data from theSMS-over-IP SIP message received from carrier ePDG 24.

At step 120, proxy server 30 may re-pack the SMS message data togenerate a compressed message. For example, proxy server 30 may generatethe compressed message by encapsulating the SMS message data using thecompression algorithm or envelope associated with low-bandwidthcommunications link 50 (e.g., using the same compression algorithm usedby first user equipment 12 while processing step 104 of FIG. 5).

At step 122, proxy server 30 may transmit the compressed message tofirst user equipment 12 over low-bandwidth communications link 50.

At step 124, first user equipment 12 may unpack the SMS message datafrom the compressed message received from proxy server 30 overlow-bandwidth communications link 50. For example, first user equipment12 may unpack the SMS message data by performing the decompressionalgorithm (e.g., de-enveloping or de-encapsulating process) associatedwith low-bandwidth communications link 50 on the compressed message(e.g., the same decompression algorithm used by proxy server 30 inprocessing step 108 of FIG. 5). The unpacked SMS message data may beprovided to software applications running on first user equipment 12(e.g., for display to a user of first user equipment 12).

The steps of FIGS. 5 and 6 may be processed to exchange SMS messages inboth directions between first user equipment 12 and second userequipment 14 when high-bandwidth communications links 34 and 36 areunavailable. In another suitable arrangement, second user equipment 14may broadcast SMS message data to first user equipment 12 and/or otheruser equipment in communications network 10 (e.g., without first userequipment 12 transmitting SMS message data back to second user equipment14). Rather than being addressed to an individual proxy server 30,SMS-over-IP SIP messages that include SMS message data broadcasted bysecond user equipment 14 may be provided to multiple user equipmentnetwork addresses by carrier ePDG 24 (e.g., different network addressesknown by the network carrier associated with carrier core network 16 andcarrier ePDG 24 to be located within or associated with a particulargeographic region or area). In scenarios where high-bandwidthcommunications links 34 and 36 are unavailable, this broadcasted SMSmessage data (e.g., the SMS-over-IP SIP messages that include thebroadcasted SMS message data) may be addressed to proxy server 30 (e.g.,because proxy server 30 represents first user equipment 12 from theperspective of carrier ePDG 24). Proxy server 30 may forward thebroadcasted SMS message data to first user equipment 12 overlow-bandwidth communications link 50.

FIG. 7 is a flow diagram showing how first user equipment 12 maytransmit SMS message data over communications network 10 whenhigh-bandwidth communications link 34 is available and whenhigh-bandwidth communications link 34 is unavailable. As shown in FIG.7, when high-bandwidth communications link 34 is available, first userequipment 12 may transmit SMS-over-IP SIP message 126 to wireless accesspoint 20 over high-bandwidth communications link 34, as shown by arrow128. Wireless access point 20 may route SMS-over-IP SIP message 126 tocarrier ePDG 24 over data path 40, as shown by arrow 130. Communicationsnetwork 10 may, for example, transmit SMS-over-IP SIP message 126 over asecure network tunnel such as IPSec tunnel 129 that extends from firstuser equipment 12 to carrier ePDG 24 through wireless access point 20(e.g., an IPSec tunnel that runs through wireless access point 20 butthat terminates at first user equipment 12 and carrier ePDG 24). CarrierePDG 24 may transmit SMS-over-IP SIP message 126 to carrier core network16 over data path 42, as shown by arrow 132. Carrier ePDG 24 maytransmit the SMS message data from SMS-over-IP SIP message 126 tocarrier core network 16 in other formats if desired. The communicationsnetwork may subsequently transmit the SMS message data to the seconduser equipment via SMS controller 18 of FIG. 1.

When high-bandwidth communications link 34 is unavailable, first userequipment 12 may generate compressed message (CM) 134 by encapsulating(compressing) the SMS message data that would otherwise have beentransmitted in SMS-over-IP SIP message 126 (e.g., while processing step104 of FIG. 5). First user equipment 12 may transmit compressed message134 to proxy server 30 over low-bandwidth communications link 50, asshown by arrow 136 (e.g., while processing step 106 of FIG. 5).Compressed message 134 may, for example, be transmitted over a securenetwork tunnel 137 extending from first user equipment 12 to proxyserver 30. While low-bandwidth communications link 50 may not havesufficient bandwidth to support transmission of SMS-over-IP SIPmessages, low-bandwidth communications link 50 may be capable oftransmitting compressed message 134, which is much smaller thanSMS-over-IP SIP message 126.

Proxy server 30 may unpack the SMS message data from compressed message134 and may re-pack (encapsulate) the SMS message data as SMS-over-IPSIP message 140 (e.g., while processing steps 108 and 110 of FIG. 5).Proxy server 30 may transmit SMS-over-IP SIP message 140 to carrier ePDG24 over data path 52, as shown by arrow 138 (e.g., while processing step112 of FIG. 5). SMS-over-IP SIP message 140 may, for example, betransmitted over a secure network tunnel such as IPSec tunnel 139extending from proxy server 30 to carrier ePDG 24 (e.g., an IPSec tunnelthat terminates at proxy server 30 and carrier ePDG 24). SMS-over-IP SIPmessage 140 may be indistinguishable from SMS-over-IP SIP message 126 tocarrier ePDG 24 (e.g., carrier ePDG 24 may be unable to distinguishbetween IPSec tunnel 129 and IPSec tunnel 139). Carrier ePDG 24 maytransmit SMS-over-IP SIP message 140 to carrier core network 16 overdata path 42, as shown by arrow 142. Carrier ePDG 24 may transmit theSMS message data from SMS-over-IP SIP message 140 to carrier corenetwork 16 in other formats if desired. The communications network maysubsequently transmit the SMS message data to the second user equipmentvia SMS controller 18 of FIG. 1.

FIG. 8 is a flow diagram showing how first user equipment 12 may receiveSMS message data over communications network 10 when high-bandwidthcommunications link 34 is available and when high-bandwidthcommunications link 34 is unavailable. As shown in FIG. 8, whenhigh-bandwidth communications link 34 is available, carrier ePDG 24 mayreceive SMS-over-IP SIP message 154 from carrier core network 16 overdata path 42, as shown by arrow 156. Carrier ePDG 24 may transmitSMS-over-IP SIP message 154 to first user equipment 12 over IPSec tunnel129 (e.g., SMS-over-IP SIP message 154 may be conveyed to wirelessaccess point 20 over data path 40, as shown by arrow 158, and may beconveyed to first user equipment 12 over high-bandwidth communicationslink 34, as shown by arrow 160).

When high-bandwidth communications link 34 is unavailable, carrier ePDG24 may receive SMS-over-IP SIP message 144 from carrier core network 16over data path 42, as shown by arrow 146. Carrier ePDG 24 may transmitSMS-over-IP SIP message 144 to proxy server 30 over data path 52, asshown by arrow 148 (e.g., over IPSec tunnel 139). Because carrier ePDG24 is unable to distinguish between IPSec tunnel 129 and IPSec tunnel139, SMS-over-IP SIP message 144 may be transmitted to proxy server 30even though high-bandwidth communications link 34 is unavailable.

Proxy server 30 may unpack the SMS message data from SMS-over-IP SIPmessage 144 and may re-pack (encapsulate) the SMS message data togenerate compressed message 150 (e.g., while processing steps 118 and120 of FIG. 6). Proxy server 30 may transmit compressed message 150 tofirst user equipment 12 over low-bandwidth communications link 50, asshown by arrow 152 (e.g., while processing step 122 of FIG. 6). Firstuser equipment 12 may subsequently unpack (de-encapsulate) compressedmessage 150 to retrieve the SMS message data from SMS-over-IP SIPmessage 144 (e.g., while processing step 124 of FIG. 6). Whilelow-bandwidth communications link 50 may have insufficient bandwidth tosupport transmission of SMS-over-IP SIP messages, low-bandwidthcommunications link 50 may be capable of transmitting compressed message150, which is much smaller than SMS-over-IP SIP message 154. In thisway, first user equipment 12 may continue to transmit and receive SMSmessage data even when high-bandwidth communications links becomeunavailable. Because carrier ePDG 24 is unable to distinguish betweenSMS-over-IP messages from proxy server 30 and SMS-over-IP messages fromfirst user equipment 12, communications may transition from thehigh-bandwidth communications links to the low-bandwidth communicationslinks without requiring expensive and time-consuming modifications tocarrier ePDG 24, carrier core network 16, or other portions ofcommunications network 10.

In practice, first user equipment 12 may rapidly and unpredictablyswitch between the high-speed communications link (e.g., high-bandwidthcommunications link 34) and the low-speed communications link (e.g.,low-bandwidth communications link 34) such that the same message isreceived multiple times over different protocols and/or communicationslinks (e.g., over links 34 and 50), potentially over long periods oftime. This may occur, for example, in scenarios where both thehigh-speed communications link (e.g., high-bandwidth communications link34) and the low-speed communications link (e.g., low-bandwidthcommunications link 50) are concurrently available and/or in scenarioswhere proxy server 30 and/or carrier ePDG 24 queue messages for firstuser equipment 12 such as when first user equipment 12 has noconnectivity. Consider an example in which first user equipment 12receives a message over low-bandwidth communications link 50 but thelink is severed before first user equipment 12 sends an acknowledgement(ACK) message back to proxy server 30. Then, when high-bandwidthcommunications link 34 is back in service (e.g., hours later), firstuser equipment 12 may receive the same message over link 34 and may sendan ACK message to carrier ePDG 24 in response. In these scenarios, firstuser equipment 12 may perform de-duplication operations to handle thereceipt and acknowledgement of these duplicate messages at first userequipment 12.

If desired, proxy server 30 may control other devices to send andreceive SMS messages (e.g., SMS-over-IP messages) on behalf of firstuser equipment 12. For example, proxy server 30 may communicate with oneor more additional devices (e.g., a tablet computer, laptop computer,speaker device, desktop computer, cellular telephone, etc.) to controlthe device(s) to send and/or receive SMS messages on behalf of firstuser equipment 12 while first user equipment 12 is communicativelycoupled to proxy server 30 (e.g., via low-bandwidth communications link50 or any Internet link). Proxy server 30 may be communicatively coupledto the additional device(s) via any desired wired and/or wireless links.Proxy server 30 may transmit message data from first user equipment 12to the additional device(s) for transmission to second user equipment 14and may relay message data received by the additional device(s) to firstuser equipment 12. This operation may be performed even when first userequipment 12 is not constantly connected to proxy server 30 (e.g.,authentication may be performed once and then on some regular periodthereafter).

The methods and operations described above in connection with FIGS. 1-8may be performed by the components of communications network 10 usingsoftware, firmware, and/or hardware (e.g., dedicated circuitry orhardware). Software code for performing these operations may be storedon non-transitory computer readable storage media (e.g., tangiblecomputer readable storage media) stored on one or more of the componentsof communications network 10 or elsewhere (e.g., storage 58 of FIG. 2).The software code may sometimes be referred to as software, data,instructions, program instructions, or code. The non-transitory computerreadable storage media may include drives, non-volatile memory such asnon-volatile random-access memory (NVRAM), removable flash drives orother removable media, other types of random-access memory, etc.Software stored on the non-transitory computer readable storage mediamay be executed by processing circuitry on one or more of the componentsof communications network 10 (e.g., processing circuitry 56 of FIG. 2).The processing circuitry may include microprocessors, central processingunits (CPUs), application-specific integrated circuits with processingcircuitry, or other processing circuitry.

The foregoing is merely illustrative and various modifications can bemade to the described embodiments. The foregoing embodiments may beimplemented individually or in any combination.

What is claimed is:
 1. A user equipment device comprising: wirelesscircuitry configured to communicate with external equipment over a firstcommunications link having a first bandwidth and over a secondcommunications link having a second bandwidth that is less than thefirst bandwidth; and control circuitry coupled to the wireless circuitryfor controlling transmission of message data, wherein the controlcircuitry is configured to: control, while the first communications linkis available, the wireless circuitry to transmit the message data in aSession Initiation Protocol (SIP) message over the first communicationslink, and control, while the first communications link is unavailable,the wireless circuitry to transmit the message data in a compressedmessage over the second communications link.
 2. The user equipmentdevice of claim 1, wherein the control circuitry is configured togenerate the compressed message by encapsulating, using a compressionalgorithm associated with the second communications link, the messagedata.
 3. The user equipment device of claim 2, wherein the compressedmessage does not include a Short Message Service (SMS) header or an IPMultimedia Subsystem (IMS) header.
 4. The user equipment device of claim3, wherein the SIP message comprises an SMS header and an IMS header andwherein the compressed message comprises a link layer header.
 5. Theuser equipment device of claim 1, wherein the message data comprisesShort Message (SMS) message data.
 6. The user equipment device of claim1, wherein the first communications link forms part of an overlyingnetwork tunnel that runs through a wireless access point and thatterminates at the electronic device and at an Evolved Packet DataGateway (ePDG), the control circuitry being configured to transmit theSIP message to the ePDG through the network tunnel.
 7. The userequipment device of claim 6, wherein the control circuitry is configuredto transmit the compressed message to a proxy server through anadditional network tunnel overlying the second communications link andwherein the additional network tunnel terminates at the electronicdevice and the proxy server.
 8. The user equipment device of claim 1,wherein the control circuitry is configured to identify when the firstcommunications link has become unavailable and wherein the controlcircuitry is configured to control the wireless circuitry to transmit,in response to identifying that the first communications link has becomeunavailable, configuration data to a proxy server over the secondcommunications link, wherein the configuration data includes aninternational mobile subscriber identity associated with the electronicdevice and a network access identifier associated with the electronicdevice.
 9. The user equipment device of claim 1, wherein the firstcommunications link comprises a first wireless communications link in afirst frequency band and wherein the second communications linkcomprises: a second wireless communications link in a second frequencyband that is different from the first frequency band; and a network ofcommunications nodes selected from the group consisting of: a meshnetwork, a relay network, a star network, a ring network, and a treenetwork.
 10. A method of operating a communications network to conveyShort Message Service (SMS) message data from first user equipment tosecond user equipment using the Internet Protocol (IP), wherein thecommunications network comprises an Evolved Packet Data Gateway (ePDG),wireless equipment, and a proxy server, the method comprising: with thewireless equipment, receiving a first SMS-over-IP message from the firstuser equipment over a first communications link having a firstbandwidth; with the wireless equipment, routing the first SMS-over-IPmessage to the ePDG; and with the proxy server, while the firstcommunications link is unavailable, receiving message data from thefirst user equipment over a second communications link having a secondbandwidth that is less than the first bandwidth.
 11. The method of claim10, further comprising: with the proxy server, converting the messagedata received from the first user equipment into a second SMS-over-IPmessage; and with the proxy server, transmitting the second SMS-over-IPmessage to the ePDG.
 12. The method of claim 11, further comprising:with the proxy server, receiving a third SMS-over-IP message from theePDG, the third SMS-over-IP message comprising SMS message datatransmitted by the second user equipment; with the proxy server,extracting, from the third SMS-over-IP message, the SMS message datatransmitted by the second user equipment; with the proxy server,generating a compressed message by encapsulating, using a compressionalgorithm associated with the second communications link, the SMSmessage data transmitted by the second user equipment; and with theproxy server, transmitting the compressed message to the first userequipment over the second communications link.
 13. The method of claim11, further comprising: with the ePDG, receiving the first SMS-over-IPmessage over a first network tunnel that runs through the wirelessequipment and that terminates at the first user equipment and the ePDG;and with the ePDG, receiving the second SMS-over-IP message over asecond network tunnel that terminates at the proxy server and the ePDG.14. The method of claim 13, wherein receiving the message data from thefirst user equipment over the second communications link comprisesreceiving the message data over a third network tunnel that terminatesat the first user equipment and the proxy server.
 15. The method ofclaim 13, wherein the second communications link comprises a wirelesscommunications link having the second bandwidth and a network selectedfrom the group consisting of: a relay network, a mesh network, a starnetwork, a ring network, and a tree network.
 16. The method of claim 11,further comprising: with the proxy server, receiving carrierconfiguration file information from a carrier configuration file server;with the proxy server, when the first communications link isunavailable, receiving configuration data from the first user equipmentover the second communications link; with the proxy server, identifying,based on the configuration data and the carrier configuration fileinformation, a network address of the ePDG; and with the proxy server,after the network address of the ePDG has been identified, transmittingan authentication request to an authentication server via the ePDG. 17.The method of claim 16, further comprising: with the proxy server,receiving a response to the authentication request from theauthentication server through the ePDG, the response to theauthentication request being addressed to the proxy server; with theproxy server, transmitting the response to the authentication request tothe first user equipment over the second communications link; with theproxy server, receiving a subscriber identity module (SIM) challengeresponse from the first user equipment over the second communicationslink; with the proxy server, transmitting the SIM challenge response tothe authentication server via the ePDG; with the proxy server,receiving, via the ePDG, an acknowledgement indicative of the SIMchallenge response being verified by the authentication server; and withthe proxy server and after the acknowledgement has been received,transmitting, via the ePDG and a network tunnel extending from the proxyserver to the ePDG, an IP Multimedia Subsystem (IMS) registrationrequest to the authentication server.
 18. The method of claim 10,wherein the wireless equipment comprises wireless equipment selectedfrom the group consisting of: a wireless base station and a wirelessaccess point, wherein the first communications link comprises a firstwireless link between the wireless equipment and the user equipment, andwherein the second communications link comprises a second wireless linkthat is different from the first wireless link.
 19. A non-transitorycomputer-readable storage medium storing one or more programs configuredto be executed by at least one processor of user equipment havingwireless circuitry and a display, the one or more programs includinginstructions for: receiving, using the wireless circuitry, a messagefrom an Evolved Packet Data Gateway (ePDG) over a first communicationslink, wherein the message includes first message data and wherein thefirst communications link has a first bandwidth; receiving, using thewireless circuitry and while the first communications link isunavailable, a compressed message from the ePDG via a proxy server and asecond communications link between the proxy server and the userequipment, wherein the second communications link has a second bandwidththat is less than the first bandwidth; and de-encapsulating thecompressed message to retrieve second message data from the compressedmessage.
 20. The non-transitory computer-readable storage medium ofclaim 19, wherein the one or more programs further include instructionsfor: displaying the second message data on the display, wherein thefirst message data comprises first Short Message Service (SMS) data andthe second message data comprises second SMS data and wherein themessage comprises a Session Initiation Protocol (SIP) message;transmitting, using the wireless circuitry, an additional SIP message tothe ePDG over the first communications link, wherein the additional SIPmessage includes third SMS message data; generating an additionalcompressed message by encapsulating fourth SMS message data; andtransmitting, using the wireless circuitry and while the firstcommunications link is unavailable, the additional compressed message tothe ePDG via the second communications link and the proxy server.